NSNumber的用法

在Objective-c中有int的数据类型,那为什么还要使用数字对象NSNumber?这是因为很多类(如NSArray)都要求使用对象,而int不是对象。 NSNumber就是数字对象,我们可以使用NSNumber对象来创建和初始化不同类型的数字对象。

数字对象的初始化

    //  类方法创建数字对象
    int number = 10;
    NSNumber * intNumber = [NSNumber numberWithInt:number];

    BOOL isBool = YES;
    NSNumber * boolNumber = [NSNumber numberWithBool:isBool];

    // 实例方法创建对象
    float pi = 3.14;
    NSNumber * piNumber = [[NSNumber alloc]initWithFloat:pi];

    char character = 'a';
    NSNumber * cNumber = [[NSNumber alloc]initWithChar:character];

数字对象的转换

//  还原成基本类型

    int month = [intNumber intValue];
    BOOL isbool = [boolNumber boolValue];
    float leng = [piNumber floatValue];
    char  chara = [cNumber charValue];

results matching ""

    No results matching ""